package com.fantastic.service.zjs;

import com.fantastic.common.utils.FilesUtils;
import com.fantastic.model.pojo.zjs.Account;
import com.fantastic.model.pojo.zjs.AccountCoupons;
import com.fantastic.model.pojo.zjs.User;
import com.fantastic.model.vo.zjs.AccountCouponsVo;
import com.fantastic.model.vo.zjs.UserVo;
import com.github.pagehelper.Page;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * @author: rxx
 * @since: 2024/5/22 20:30
 * @description: 用户信息业务层
 */

public interface UserService {

    /**
     * 查询
     * 无条件时是查询全部的分页查询
     * 有条件时是查询条件的分页查询
     *
     * @return
     */
    List<User> listUsers(User user);

    /**
     * 查询单个用户
     *
     * @param userId
     * @return
     */
    User getUser(Integer userId);

    /**
     * 查询UserVo信息
     * @param account
     * @return
     */
    UserVo getUserVo(Account account);

    /**
     * 注册用户
     *
     * @param user
     */
    Integer insertUser(User user);

    /**
     * 修改用户信息
     * @param  file 文件对象
     * @param user
     */
    Integer updateUser(MultipartFile file, User user);

    /**
     * 删除用户信息
     *
     * @param uId
     */
    Integer deleteUser(Integer uId);
}
